﻿namespace WMS6.Web.AnalyticsReportServiceRef
{
    using System;
    using System.CodeDom.Compiler;
    using System.ComponentModel;
    using System.Diagnostics;
    using System.Runtime.CompilerServices;
    using System.Runtime.Serialization;

    [Serializable, DebuggerStepThrough, DataContract(Name="PhysicalCountRptInfo", Namespace="http://schemas.datacontract.org/2004/07/WMS6.DataEntity"), GeneratedCode("System.Runtime.Serialization", "3.0.0.0")]
    public class PhysicalCountRptInfo : IExtensibleDataObject, INotifyPropertyChanged
    {
        [OptionalField]
        private string CURRENTPAGEField;
        [OptionalField]
        private DateTime ExpiryDateField;
        [NonSerialized]
        private ExtensionDataObject extensionDataField;
        [OptionalField]
        private string ExternalLotField;
        [OptionalField]
        private decimal InvQtyField;
        [OptionalField]
        private string LocationField;
        [OptionalField]
        private string LotArrt01Field;
        [OptionalField]
        private string LotArrt02Field;
        [OptionalField]
        private string LotArrt03Field;
        [OptionalField]
        private string LotArrt04Field;
        [OptionalField]
        private string LotArrt05Field;
        [OptionalField]
        private string LotArrt06Field;
        [OptionalField]
        private string LotArrt07Field;
        [OptionalField]
        private string LotArrt08Field;
        [OptionalField]
        private string LotArrt09Field;
        [OptionalField]
        private string LotArrt10Field;
        [OptionalField]
        private string LotField;
        [OptionalField]
        private string LpnIDField;
        [OptionalField]
        private decimal PcQtyField;
        [OptionalField]
        private DateTime ProduceDateField;
        [OptionalField]
        private DateTime ReceiptDateField;
        [OptionalField]
        private string SkuDescrField;
        [OptionalField]
        private string SkuIDField;
        [OptionalField]
        private string SkuStyle2Field;
        [OptionalField]
        private string SkuStyleField;
        [OptionalField]
        private string TOTALPAGESCOUNTField;
        [OptionalField]
        private string TOTALRECORDSCOUNTField;
        [OptionalField]
        private string UomIDField;
        [OptionalField]
        private string VendorIDField;

        public event PropertyChangedEventHandler PropertyChanged;

        protected void RaisePropertyChanged(string propertyName)
        {
            PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
            if (propertyChanged != null)
            {
                propertyChanged(this, new PropertyChangedEventArgs(propertyName));
            }
        }

        [DataMember]
        public string CURRENTPAGE
        {
            get
            {
                return this.CURRENTPAGEField;
            }
            set
            {
                if (!object.ReferenceEquals(this.CURRENTPAGEField, value))
                {
                    this.CURRENTPAGEField = value;
                    this.RaisePropertyChanged("CURRENTPAGE");
                }
            }
        }

        [DataMember]
        public DateTime ExpiryDate
        {
            get
            {
                return this.ExpiryDateField;
            }
            set
            {
                if (!this.ExpiryDateField.Equals(value))
                {
                    this.ExpiryDateField = value;
                    this.RaisePropertyChanged("ExpiryDate");
                }
            }
        }

        [Browsable(false)]
        public ExtensionDataObject ExtensionData
        {
            get
            {
                return this.extensionDataField;
            }
            set
            {
                this.extensionDataField = value;
            }
        }

        [DataMember]
        public string ExternalLot
        {
            get
            {
                return this.ExternalLotField;
            }
            set
            {
                if (!object.ReferenceEquals(this.ExternalLotField, value))
                {
                    this.ExternalLotField = value;
                    this.RaisePropertyChanged("ExternalLot");
                }
            }
        }

        [DataMember]
        public decimal InvQty
        {
            get
            {
                return this.InvQtyField;
            }
            set
            {
                if (!this.InvQtyField.Equals(value))
                {
                    this.InvQtyField = value;
                    this.RaisePropertyChanged("InvQty");
                }
            }
        }

        [DataMember]
        public string Location
        {
            get
            {
                return this.LocationField;
            }
            set
            {
                if (!object.ReferenceEquals(this.LocationField, value))
                {
                    this.LocationField = value;
                    this.RaisePropertyChanged("Location");
                }
            }
        }

        [DataMember]
        public string Lot
        {
            get
            {
                return this.LotField;
            }
            set
            {
                if (!object.ReferenceEquals(this.LotField, value))
                {
                    this.LotField = value;
                    this.RaisePropertyChanged("Lot");
                }
            }
        }

        [DataMember]
        public string LotArrt01
        {
            get
            {
                return this.LotArrt01Field;
            }
            set
            {
                if (!object.ReferenceEquals(this.LotArrt01Field, value))
                {
                    this.LotArrt01Field = value;
                    this.RaisePropertyChanged("LotArrt01");
                }
            }
        }

        [DataMember]
        public string LotArrt02
        {
            get
            {
                return this.LotArrt02Field;
            }
            set
            {
                if (!object.ReferenceEquals(this.LotArrt02Field, value))
                {
                    this.LotArrt02Field = value;
                    this.RaisePropertyChanged("LotArrt02");
                }
            }
        }

        [DataMember]
        public string LotArrt03
        {
            get
            {
                return this.LotArrt03Field;
            }
            set
            {
                if (!object.ReferenceEquals(this.LotArrt03Field, value))
                {
                    this.LotArrt03Field = value;
                    this.RaisePropertyChanged("LotArrt03");
                }
            }
        }

        [DataMember]
        public string LotArrt04
        {
            get
            {
                return this.LotArrt04Field;
            }
            set
            {
                if (!object.ReferenceEquals(this.LotArrt04Field, value))
                {
                    this.LotArrt04Field = value;
                    this.RaisePropertyChanged("LotArrt04");
                }
            }
        }

        [DataMember]
        public string LotArrt05
        {
            get
            {
                return this.LotArrt05Field;
            }
            set
            {
                if (!object.ReferenceEquals(this.LotArrt05Field, value))
                {
                    this.LotArrt05Field = value;
                    this.RaisePropertyChanged("LotArrt05");
                }
            }
        }

        [DataMember]
        public string LotArrt06
        {
            get
            {
                return this.LotArrt06Field;
            }
            set
            {
                if (!object.ReferenceEquals(this.LotArrt06Field, value))
                {
                    this.LotArrt06Field = value;
                    this.RaisePropertyChanged("LotArrt06");
                }
            }
        }

        [DataMember]
        public string LotArrt07
        {
            get
            {
                return this.LotArrt07Field;
            }
            set
            {
                if (!object.ReferenceEquals(this.LotArrt07Field, value))
                {
                    this.LotArrt07Field = value;
                    this.RaisePropertyChanged("LotArrt07");
                }
            }
        }

        [DataMember]
        public string LotArrt08
        {
            get
            {
                return this.LotArrt08Field;
            }
            set
            {
                if (!object.ReferenceEquals(this.LotArrt08Field, value))
                {
                    this.LotArrt08Field = value;
                    this.RaisePropertyChanged("LotArrt08");
                }
            }
        }

        [DataMember]
        public string LotArrt09
        {
            get
            {
                return this.LotArrt09Field;
            }
            set
            {
                if (!object.ReferenceEquals(this.LotArrt09Field, value))
                {
                    this.LotArrt09Field = value;
                    this.RaisePropertyChanged("LotArrt09");
                }
            }
        }

        [DataMember]
        public string LotArrt10
        {
            get
            {
                return this.LotArrt10Field;
            }
            set
            {
                if (!object.ReferenceEquals(this.LotArrt10Field, value))
                {
                    this.LotArrt10Field = value;
                    this.RaisePropertyChanged("LotArrt10");
                }
            }
        }

        [DataMember]
        public string LpnID
        {
            get
            {
                return this.LpnIDField;
            }
            set
            {
                if (!object.ReferenceEquals(this.LpnIDField, value))
                {
                    this.LpnIDField = value;
                    this.RaisePropertyChanged("LpnID");
                }
            }
        }

        [DataMember]
        public decimal PcQty
        {
            get
            {
                return this.PcQtyField;
            }
            set
            {
                if (!this.PcQtyField.Equals(value))
                {
                    this.PcQtyField = value;
                    this.RaisePropertyChanged("PcQty");
                }
            }
        }

        [DataMember]
        public DateTime ProduceDate
        {
            get
            {
                return this.ProduceDateField;
            }
            set
            {
                if (!this.ProduceDateField.Equals(value))
                {
                    this.ProduceDateField = value;
                    this.RaisePropertyChanged("ProduceDate");
                }
            }
        }

        [DataMember]
        public DateTime ReceiptDate
        {
            get
            {
                return this.ReceiptDateField;
            }
            set
            {
                if (!this.ReceiptDateField.Equals(value))
                {
                    this.ReceiptDateField = value;
                    this.RaisePropertyChanged("ReceiptDate");
                }
            }
        }

        [DataMember]
        public string SkuDescr
        {
            get
            {
                return this.SkuDescrField;
            }
            set
            {
                if (!object.ReferenceEquals(this.SkuDescrField, value))
                {
                    this.SkuDescrField = value;
                    this.RaisePropertyChanged("SkuDescr");
                }
            }
        }

        [DataMember]
        public string SkuID
        {
            get
            {
                return this.SkuIDField;
            }
            set
            {
                if (!object.ReferenceEquals(this.SkuIDField, value))
                {
                    this.SkuIDField = value;
                    this.RaisePropertyChanged("SkuID");
                }
            }
        }

        [DataMember]
        public string SkuStyle
        {
            get
            {
                return this.SkuStyleField;
            }
            set
            {
                if (!object.ReferenceEquals(this.SkuStyleField, value))
                {
                    this.SkuStyleField = value;
                    this.RaisePropertyChanged("SkuStyle");
                }
            }
        }

        [DataMember]
        public string SkuStyle2
        {
            get
            {
                return this.SkuStyle2Field;
            }
            set
            {
                if (!object.ReferenceEquals(this.SkuStyle2Field, value))
                {
                    this.SkuStyle2Field = value;
                    this.RaisePropertyChanged("SkuStyle2");
                }
            }
        }

        [DataMember]
        public string TOTALPAGESCOUNT
        {
            get
            {
                return this.TOTALPAGESCOUNTField;
            }
            set
            {
                if (!object.ReferenceEquals(this.TOTALPAGESCOUNTField, value))
                {
                    this.TOTALPAGESCOUNTField = value;
                    this.RaisePropertyChanged("TOTALPAGESCOUNT");
                }
            }
        }

        [DataMember]
        public string TOTALRECORDSCOUNT
        {
            get
            {
                return this.TOTALRECORDSCOUNTField;
            }
            set
            {
                if (!object.ReferenceEquals(this.TOTALRECORDSCOUNTField, value))
                {
                    this.TOTALRECORDSCOUNTField = value;
                    this.RaisePropertyChanged("TOTALRECORDSCOUNT");
                }
            }
        }

        [DataMember]
        public string UomID
        {
            get
            {
                return this.UomIDField;
            }
            set
            {
                if (!object.ReferenceEquals(this.UomIDField, value))
                {
                    this.UomIDField = value;
                    this.RaisePropertyChanged("UomID");
                }
            }
        }

        [DataMember]
        public string VendorID
        {
            get
            {
                return this.VendorIDField;
            }
            set
            {
                if (!object.ReferenceEquals(this.VendorIDField, value))
                {
                    this.VendorIDField = value;
                    this.RaisePropertyChanged("VendorID");
                }
            }
        }
    }
}

